///PHILOTES Source Code.  (C)2012 PhiloLabs
#pragma once

#ifndef _WireBoundingBox_H__
#define _WireBoundingBox_H__

#include "OgrePrerequisites.h"

#include "OgreSimpleRenderable.h"

namespace Ogre {

	
	
	
	class _OgreExport WireBoundingBox : public SimpleRenderable
	{
    protected:
        
		void getWorldTransforms( Matrix4* xform ) const;
		
        
		void setupBoundingBoxVertices(const AxisAlignedBox& aab);

        Real mRadius;

		void _initWireBoundingBox();

	public:
			
		WireBoundingBox();
		WireBoundingBox(const String& name);
		~WireBoundingBox();

        
		void setupBoundingBox(const AxisAlignedBox& aabb);

		Real getSquaredViewDepth(const Camera* cam) const;

        Real getBoundingRadius(void) const { return mRadius; }

	};
	
	

}// namespace

#endif


